﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Odense_Kommune.Interfaces;

namespace Odense_Kommune.Model
{
    /// <summary>
    /// Klasse skrevet af Søren Eg Pedersen
    /// </summary>
    public class MålgruppeCollection : IMålgruppeCol
    {
        #region Variabler
        private List<IMålgruppe> _listeafmålgrupper;
        #endregion

        #region Konstruktør
        public MålgruppeCollection()
        {
            ListeafMålgrupper = new List<IMålgruppe>();
            ListeafMålgrupper.Add(new Målgruppe("Frivillig"));
            ListeafMålgrupper.Add(new Målgruppe("Målgruppe A"));
            ListeafMålgrupper.Add(new Målgruppe("Målgruppe B"));
        }
        #endregion

        #region Metoder
        public void OpretMålgruppe(string beskrivelse)
        {
            foreach (var item in ListeafMålgrupper)
            {
                if (item.Beskrivelse == beskrivelse)
                    throw new Exception("En målgruppe med beskrivelsen " + beskrivelse + " findes allerede i systemet");
                else
                    ListeafMålgrupper.Add(new Målgruppe(beskrivelse));
            }
        }

        public void SletMålgruppe(IMålgruppe m) { ListeafMålgrupper.Remove(m); }

        public IMålgruppe RedigérMålgruppe(IMålgruppe m, string beskrivelse)
        {
            m.Beskrivelse = beskrivelse; return m;
        }
        #endregion

        #region Egenskaber
        public List<IMålgruppe> ListeafMålgrupper { get { return _listeafmålgrupper; } set { _listeafmålgrupper = value; } }
        #endregion
    }
}
